package main

import (
	"fmt"
	"reflect"
)

func main() {
	var a int = 12
	setOther(&a) // 要修改值，需要地址传递
	fmt.Println(a)

}

func setOther(i interface{}) {
	type1 := reflect.TypeOf(i)
	value1 := reflect.ValueOf(i)
	fmt.Printf("%v,%v, 类型分别是：%T， %T\n", type1, value1, type1, value1)
	// 设置值， elem：指针指向的值的Value封装； setInt：设置v的持有值
	value1.Elem().SetInt(24)
}
